1. Field of the Invention
This invention relates to interacting with a virtual world, and particularly to interacting by using graphical user interface elements of the virtual world.
2. Description of the Related Art
A virtual world is a computer based environment in which a user can interact. In the virtual world, the user can be represented by a two-dimensional or three-dimensional representation known as an avatar.
The virtual world may be provided by a computer or server remote from the user. The user usually interfaces with the virtual world using a local computer. The remote computer or server may run a virtual world program that includes virtual world components. Sometimes the local computer runs a local application or local components that are integrated with the virtual world components. When this happens, it is often necessary for the user to interact with a virtual world component to provide input for running the local component.
Currently, the user interacts with the local application or component through graphical user interface (GUI) elements. These GUI elements are provided by the local operating system or local window system. However, use of the local operating system breaks the immersive experience in the virtual world expected by the user. The immersive experience is interrupted by (a) using GUI elements outside the environment of the virtual world and (b) presenting GUI elements that are not in any obvious manner connected with the activity within the virtual world that triggered the need for the interaction in the first place.
Furthermore, often it is desirable to maintain the privacy of the user's actions. Most virtual world systems allow multiple users to be active in the virtual world and observe the activities and actions of other virtual world participants. Presenting a GUI element inside the virtual world, therefore, poses the risk of revealing one user's input actions to other observer users. Thus, the privacy of the user providing input can be compromised.
Therefore, what are needed are techniques that provide a user of the virtual world the opportunity to interact with local applications or components as part of the virtual world experience.